Welcome to Django!

3.5 获取form表单提交的查询参数

form表单其实是前端HTML中的一个标签,功能是用来向服务器提交数据的。form表单支持的请求方式:

GET(默认的方式)

POST

如,编定一个index.html页面,使用form表单发送GET请求

Html5:

< html >

< head >

< meta charset = "UTF-8" >

< meta http-equiv= "X-UA-Compatible" content= "ie=edge" >

< title > Document < /title >

< /head >

< body >

< form action = "http://127.0.0.1:8000/app03/test5" >

< P > 姓名: < input type= "text" name= "name" > < /P >

< P > 年龄 : < input type= = "text" name= = "age" > < /P >

< input type= = "submit" value = "提交" >

< /form >

< /body >

< /html >


urls:

from django.urls import path

from . import views


urlpatterns = [

path( "test" ,views.test),

#一旦调用test1, 那么kwargs将会以关键字的a=100,b=200这样的形式传给test1

path( "test1" , views.test1,kwargs={ "a" : 100 , "b" : 200 }),

#test2(request,year,month)

path( "test2/<year>/<month>" , views.test2),

path( "test3" , views.test3),

path( "test5" , views.test5),

]


views

def test5(request):

name=request.GET.get( 'name' )

age= request.GET.get( 'age' )

print (name,age)

return HttpResponse( "显示form" )


用edge打开网页

file:///D:/Pyobject2023/object/Django/shn/app03/htmls/html5.html

点击提交按钮:

127.0.0.1:8000/app03/test5?name=wei&age=40


返回值为:

wei 40

[07/May/2024 22:09:49] "GET /app03/test5?name=wei&age=40 HTTP/1.1" 200 10